Vehicle navigation system

ABSTRACT

A system for continually updating the Cartesian coordinates of a land vehicle on a map or graph, employing: a compass and shaft encoder for continually producing a heading code; and a pulse generator coupled to the vehicle drive system to continually produce a train of pulses representing distance traveled. A digital resolver effectively multiplies the train of pulses by the sine and cosine of compass heading to produce two trains of pulses representing vector components of the distance traveled in a Cartesian coordinate system. These two trains are continually integrated by mechanical plotting means operated by reversible motors receiving the two trains. Encoders may be coupled to the mechanical plotting means to derive, in digital form, coordinates which may be transmitted by radio to a remote location for plotting.

United States Patent 1191 Hileman 1 July 31, 1973 VEHICLE NAVIGATIONSYSTEM [76] Inventor: I Dale Hileman, 3387 Livonia Way, 7 Pmfmry Boa LosAngeles, Calif. 90034 53 m 'T Attorney-Samuel Lindenberg et al. [22]Filed: Dec. 22, 197l Y 1 21 Appl. No.: 210,804 157 ABSTRACT ,I

3 i A system for continually updating the Cartesian coordi- 52 11.8. CI235/150.27, 235/189, 340/2 1, na je o a land ehic e on a p or g p p y g:v 346/8, 235/l51.1 l a Compass and shaft encoder for continuallyproducing [51] Int. Cl..;..-. QMQISISO a heading code; and a pu s xg n aoupled to the v [58] Field of Search... 235/150 150.26, vehicle drivesystem to continually produce a train of 235/150.27, 189, 197; 340/24,73; 346/8, 13; pulses representing distance traveled. A digital resolver307/236; 343/11 R, 112 1C, 112 PT effectively multiplies the train ofpulses by the sine and cosine of compass heading to produce two trainsof [56] References Cited 1 pulses representing vector components of thedistance UNITED STATES PATENTS traveled in a Cartesian coordinatesystem. These tv vo 3,141,725 7/1964 Gray 346/8 trams are mtegaated byP'F plmtmg 3,631,233 12/1971 McKenna" 235/186 means operated by reverslle motors receiv ng the tvvo 3,441,747 4/1969 van Dine 307/236 trams.Encoders may be coupled to the mechanleal 3 359 403 2 9 7 Briggs n 235/15 7 plotting means to derive, in digital form, coordinates 3,392,4487/1968 Rock 34 x which may be transmitted by radio to a remote location3,688,252 8/1972 Thompson 340/24 for plotting. 3,457,394 7/1969 Grado235/197 X 3,453,624 7/1969 Rockey z3s/1s0.27x ll Clams, 9 Drawing Flames"l I I 20 osc. V 1 a I 1 I p 1 El l a 1 COMPENSATING ZERO l 522 5212: 11 22 i 24 1 26 25 a 23 I SHAFT MOTOR ENCODER L 1 i '11 I 1 I v 13DIGITAL 323 RESOLVER 1: yMorcR 29 /Y MOTOR y X and Y COORDINATE ENCODERSFOR TRANS.

. PATENI'EflJum ms 2 SHEEI 1 0F 6 1 I I i 3 J. 2 RR\ Wm m O C R 8 R O EE M E 2/7 0 RD 0 M c ms C E O 2 1 R E n m m Tl O M l fi X f v 3 1 R 1 71 TE 2 2 PD E AO SN Tl HC |||.LE SN G E. P .O v 2 6 Y ll d nv a 4 \X 2 9I 2 l I L E NCODERS FOR TRANS,

FIG. 1

INVENTOR. DALE H I LE MAN MM fwd-'4, 1,,

ATTORNEYS 'PAIENIL- Jm 31 1915 same or 6' TABLE 11 PULSE-GENERATOR ORTABLE I COMPASS ENCODER TO NON-GATED MOTOR INPUT TTE 0 00 00 0 00 mmm 2m 000000000000 00 A S C m 000000000000 00 w W 000000000000 00 A AM El I00 001 00 00 MPIOF 00 00 000000 0 0 @WTO000000000000000000000000000 0 MM 10000000000001 00 00 00 100000 v00001 001 000000000000000000000 1=-000000000000000 00000000000000 0 0 100 00 00 00 00 00 00 fl01 00 00 0000 00 00 00 F 00 000 00 00 000 00 11 E 00 00000 000 0000 1 00 D 00000000000 1 1 1 1 1 1 1 0000 C 0000000 0000000 0000000 0000000 B300000000000000021 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1% A 000000002 1 1 1 1 11 111 1 1 1 1 1 %00000000W N E S W N TO MOTOR REVERSI NG DALE HILEMANTRANSISTORS O1 and .0 (FIG. 5) BY AT TORNEYS PAIENIEUJUUWH 3.749.893

' sum 3 0f 6 X=2 Y=11 E INVENTOR. DALE HILEMAN ATTORNEYS PATEmEuJum 13.749.893

SHEET 6 [IF 6 T SETSQR 2 O FROM zERo I I CROSSOVER 89 DETECTOR g;

RuLsE RESET GEN.

l PULSE I SHAFER 8%\'\POWER N MOTOR I PULSE PARALLEL BINARY 92 SHAPERCOUNTER 9o l l 86 05c. V I TO BUFFER FLIP FLOPS 4 7 28 Y MOTOR I 1 i i101 106: -m DU" A 9 103 X108 107 I [3 UH l I 104 105 I LJ x MOTORINVENTOR. DALE HILEMAN BY M,w M4WA AT TORNE YS VEHICLE NAVIGATION SYSTEMBACKGROUND OF THE INVENTION The present invention relates to landvehicle position plotters, and more particularly to a system forcontinually updating the Cartesian coordinates of a land vehicleposition for display on a map or graph.

In many different applications, it would be desirable to employ arelatively inexpensive system in a land vehicle to so position anindicator or recording stylus on a chart or map in response tonavigational data as to' continually display the vehicles positionrelative to some starting point. For example, it is oftendesirable toplot roads on a topographical map of a wilderness area. Standardtechniques of surveying often take too long for the purpose at .hand.Aerial photography is much faster, even though a number of process stepsare required, but quite often the roads are obs cured from the air byvegetation, or by lack of contrast, as in the desert. In either case,the technique is expensive in both equipment and labor.

Still other applications for inexpensive vehicleposition plotters willreadily suggest themselves. For example, a plotter in every metropolitanpolice officers vehicle would be helpful in achieving maximumeffectiveness from a limited force. It would continually display theposition of a given vehicle on a map or would simply transmit theCartesian coordinates as a pair of numbers, one representing the Xposition and the other the Y position which would then be displayed on amap at a central statiomWhile the police officer in the vehicle may notbe particularly interested in a position plotter, since he will alwaysknow his position in his assigned area'from'familiarsurroundings and mayseldom be dispatched outside of it, a dispatcher at a re- I motelocation would be extremely interested in having the position of policevehicles continually displayed. That could be easily done by continuallytransmitting. the plotters coordinates for-display on a cathode ray tubeor solid-state light-emitting system having an overlay of the city orarea map. To identify a given one of several vehicles, the transmitterin the vehicle may employ a modulator to superimpose a unique code onthe coordinate data. Once the data is received, and the code isidentified, standard techniques may be employed to display the vehiclesposition using a uniquesymbol forthe particular vehicle. A programmeddigi-' tal computer can be used to properly coordinate the display datawith a map overlay. For example, a given vehicle may be periodicallyinterrogated as to itstrue map coordinates for plotting the vehicle'sposition as it moves in the area. Those coordinates could be transmittedorally by the driver of the vehicle or transmitted automatically from aplotter. The driver can upon interrogation from time to time reset theplottingdevice to the vehicles true position on the'map using visualaids to identify the vehicles position. Because of, the relatively slowspeed of vehicles, a largenumber of vehicles can be trackedsimultaneously using standard multiplexing techniques. M

The possibilities for a land vehicle plotter are almost without limit,once reasonably accurate position coordinates are developed in thevehicle. However, the feasibility of these possibilities depends uponthe availability of a reasonably inexpensive and accurate plottingsystem which is compact, easy to install and easy to maintain.

In the past, vehicle plotting systems have been suggested using anarrangement for receiving an analog input of velocity (distance) from aspeedometer (odometer) cable and an analog input of heading from a gyrocompass. An analog computer comprised of a mechanical resolvercontinually transforms these analog inputs from polar to Cartesiancoordinates for positioning an indicator on a map or graph. However,these mechanical resolvers are complex and expensive units using eithercams or a ball. Such mechanical systems tend to be unreliable,especially with the vibration and acceleration encountered in mostvehicles. An all electronic resolver could be devised usingstandardanalog circuits but the transformation from one system ofcoordinates to another would be less accurate and the costs ofproduction and maintenance would be higher.

greater accuracy than in the past, i.e. having an accuracy better thancan be expected from systems which have been suggested in the past.

SUMMARY OF THE INVENTION Briefly, a system for continually updating theCartesian coordinates ofa land vehicle on a map or chartis provided fora land vehicle using a compass means for producing a unique code signalin digital form representing the'heading of the vehicle, and a pulsegenerating means for producing'a: train of pulses, each pulserepresenting an increment of distance traveled. The pulses (incrementsof distance traveled) on agiven heading are resolved into east-west andnorth-south pulses (components) for plotting by employing the uniqueheading code to so control sine-cosine pulserate multiplying means thatthe pulse train representing distance is resolved into two pulse trainsaccordingto the following equations:

' AX AD sin 0 AI AD cos 9 (2) where 0 is the heading, AD is the numberof pulses generated, AX is the number of desired easbwest pulses and AYis the number of desired north-south pulses. The AX and AY pulse trainsare applied to respective ones of a pair of two-phase reversiblestepping motors which drive mechanical means for positioning aplottingdevice according to the Cartesian coordinates of the distancetraveled by the vehicle along its heading. According to one feature ofthe invention, the pulse generating means is comprised of a shaftencoder coupled to the drive shaft of the vehicle by a suitable geartrain to produce'a unique cyclic code constituting sepa-- .AX and AYpulse trains according to Equations (l) and According to a furtherfeature of the invention, the

stepping motor isa two-phase synchronous inductor motor and the shaftencoder of the pulse generating meansproduces an out-of-phase pulsetrain synchronized with the separate AX and Al pulse trains for use asone input to the two phase synchronous inductor motor. The pulse trainapplied to the other input of the motor is of one polarity or anotheraccording to the quadrant of the heading as determined from the headingcode.

.Still another feature involves compensating for magnetic compass errordue to distortion of the earths magnetic field due to the ferrous massof the vehicle. Using one permanent magnet, it is possible to easilycorrect the magnetic compass error to the extent that the plottingdevice'used will produce consistently parallel lines while the vehicleis traveling on east and west headings, and on north and south headings.However, if the vehicle travels in a rectangle, the plot may very likelybe a rhomboid. To produce a rectangular plot, and thus complete thecorrection of the magnetic compass error, cursors for guiding theeast-west and northsouth motions of the plotting device are angularlyoffset by angles equal, but opposite, the angles by which the east-westand north-south plots depart from the X and Y axes of the plottingdevice.

These and other features of the present invention are set forth withparticularity in the appended claims.

The invention will best be understood from the following descriptionwhen read in conjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a general block diagram ofan exemplary embodiment of the invention.

FIG. 2 illustrates in respective tables I and II a compass encoder codeand a shaft encoder code for the exemplary embodiment of FIG. 2. a

FIG. 3 illustrates diagrammatically the manner in which shaft encoderpulses representing distance travelled are resolved into two pulsetrains in accordance with a compass encoder code representing heading toprovide drive pulses to two orthogonally oriented motors in an X-Yplotter.

FIG. 4 is a schematic diagram of the exemplary embodiment of FIG. 1.

FIG. 5 is a logic diagram for a sine-cosine resolver in the system ofFIG. 4 to achieve the results illustrated in FIG. 3.

FIG. 6 is a block diagram of an alternative arrangement for periodicallyproducing a heading code in the system of FIG. 1.

FIG. 7 is a plan view of a plotting device for the system of FIG. 1.

FIG. 8 is a diagram useful in explaining a feature of the exemplaryembodiment.

FIG. 9 is a plan view of the plotting device of FIG. 7 adjusted forcorrection of magnetic compass error.

DESCRIPTION OF THE PREFERRED EMBODIMENTS The organization and operationof an exemplary embodiment of the present invention will first bedescribed with reference to FIG. 1. A more detailed-description of thisembodiment will then be described compass periodically transmits to adigital resolver 11 a heading code according to Table] of FIG. 2 for usein resolving a train of pulses AD, representing distance traveled alonga vector at the given heading, into two trains of pulses AX and A l,representing vector components along X and Y coordinates of a plottingdevice 12. These components correspond to east-west and north-southdirections on a chart or map placed on the recording device if there isno magnetic error, as will be more fully described hereinafter. Thenumber of pulses AD produced in a given period represents the distancetraveled in that period. These pulses are developed by a pulse generator13 coupled to a drive shaft 1 14 of a vehicle, not shown except forwheels 15 driven by the drive shaft through a differential gear 16.

The manner in which the pulse generator is implemented may take manyforms. In each case, the drive for the pulse generator may be a shafthaving one end connected directly to the speedometer or odometer outputcoupling in the transmission housing. The speedometer cable is thencoupled to the other end of the shaft. The shaft rotates a cam or camsto operate switches, or rotates a worm gear to turn a shaft encoder orrotary switch. The shaft may even drive a two-phase alternator which,through squaring (saturating) amplifiers, produces two out-of-phasepulse trains at a frequency proportional to velocity of the vehicle.Still other implementations will occur to those skilled in the art suchas reed switches closed by magnets rotated past the switches by thevehicle drive shaft.

The compass 10 is comprised of a rotating magnetic sensor 20 which maybe a Hall-effect semi-conductor device, or any other magnetic fieldsensitive device, such as a simple loop of wire as shown, toperiodically sweep the earths magnetic field and, in response thereto,to generate a sinusoidal signal. That signal is applied through anamplifier 21 and filter 22 to a zerocrossover detector 23. That detectormay be a Schmitt trigger circuit or other level sensitive or phasesensitive circuit that will change a sinusoidal signal to a pulse havingafixed time relationship to the azimuth of the sensor 20. For example,the pulse produced may be adjusted to occur when the plane of a loopsensor is passing either a magnetic north heading or a true northheading by a phase shift adjustment in the filter 22 to correct formagnetic declination or by an adjustment of the relative angularpositions of sensor 22 and shaft en coder 25.

The filter 22 is used to remove undesired signals from the sinusoidaloutput of the sensor 20. It is shown as a separate functional block, butwill in practice be implemented as part of the amplifier in the usualmanner. The amplifier 21 may be coupled to the sensor 20 through a slipring, but to avoid commutating noise, an inductive coupling is preferredof the type shown at page 184 of Instrumentation in Scientific Researchby Kurt S. Lion, and published by McGraw .Hill Book Company, Inc.-(1959). Other coupling means, including RF, ultrasonic, capacitive, etc.,which are well known in the art may also be employed.

A motor 24 drives the sensor 20 and a shaft encoder 25 through'asuitable gear box 26 or other drive mechanism. By relating the phase ofthe sinusoidal signal from the sensor 20 to a 6-bit code from theencoder25, the resolver ll effectively receives vehicle heading information.For example, suppose the zero-crossover detector 23 generates a pulseonce per rotation of the sensor, i.e. once per cycle of the sinusoidalsignal from the sensor; the 6-bit code read out of the shaft encoder 25at that time will correspond to the heading of the vehicle. That code ispreferably a Gray code to avoid ambiguity when the actual heading of thevehicle is on the.

border between two discrete heading codes.

Ideally, 360 discrete heading codes would be. provided on the shaftencoder 25 to resolve the heading of the vehicle to within one degree,but that would add to the expense of the encoder and to the complexityof the resolver l 1. Therefore, the encoder is, in practice, providedwith 32 discrete codes, each corresponding to I P l5.'At the instant apulse fromth e zero-crossover ployed as shown in Table I of FIG. 2 inorder to simplifyimplementation of the resolver 11. The first two bitsin each word under columnsA and B are employed to determine thedirection in which drive motors 27 and 28 are to be operated in therespectiveX (east-west) and Y (north-south) directions for continuallyplotting the position of the vehicle. In that regard it should be notedthat the shaft encoder continually transmits a bit 0 for northerlyheadings between 90 and-270. At the same time, the compass shaft encodertransmits a binary 0 for easterly headings between 0 and 180, anda'binary 1 for westerly headings between 180 and 270. Therefore, the X(east-west) motor should be drivenin a positive direction when the 8-bitiszero and in a negative direction 'at allother times.-Similarly, the Y(northsouth) motor should be driven in a positive direction when theA-bit is-a zero, and in a negative direction at all other times. Y

- The C column of the 6-bitcode of the compass shaft encoder is a bit 1for a sector of 11 15' centered at each of the cardinal headings north,east, south and west. The 4-bit codes for the v16 sectors from north tosouth under the columns, C, D, E and F are numbered in order accordingto a Gray code from a sector centered on a northerly cardinal headingthrough a sector centered on the easterly cardinal heading, and ininverse order forrthe sectors from the easterly cardinal heading througha sector centered on a southerly cardinal heading. This is appropriateif the headings represented by these Gray codes are to be used forresolving a distance vector from a polar coordinate system to aCartesian coordinate system for angles from 0 to 180. The ambiguity inthe Y component is quite obviously resolved by the bit in the A column.

The code pattern is repeated from. the sector centered on the southerlycardinal heading through the westerly cardinal heading to the sectorcentered on the northerly cardinal heading. Again, ambiguity in the Ydirection is resolved by thebit in the column A. Ambiguity in the Xdirection is resolved by the bit in the column B. In that manner, the4-bit codes taken from columns C, D, E andjF of the compass shaftencoder may be used to resolve distance travelled by the vehicle in anydirection into X and Y components while the 2-bit code in columns A andB automatically indicate the signs of the vector components,'i.e.indicate the direction in which the respective X and Y motors are to bedriven. Since only I bit changes as heading changes from one sector toanother in the Gray code of columns C, D, E and F, ambiguity is avoidedwhen the vehicle heading is on the border between two discrete sectors.

The pulse generating means 13 is comprised of a shaft encoder coupled tothe drive shaft or axle of the vehicle. It produces in one revolutionthe sequence of 6-bit codes shown in Table II. The first two columns areemployed to produce two square wave signals in phase quadrature with thesignals of the remaining flow columns and are used in the preferredembodiment of FIG. 4 to excite field windings of the X and Y motors -27-and 28' of the plotting device 12 shown in FIG. 1.

The remaining four columns of 'Table II for the pulsegenerator shaftencoder are headed 1's, 2s, 4s(A) and 4s(B). In the ls column, twosuccessive binary digits produce a square pulse in phase quadrature withboth of the square waves derived from the first two columns, but onlyonce in a single shaft revolution. The 2's column provides two suchpulses and the 4s(A) column provides four such pulses in a singlerevolution, all in sequence. Following that, the 4s(B) column producesanother set of four equally spaced square pulses in sequence, afterwhich allcolumns are zero, except the first two columns. These zerocodes are not essential, and may be omitted, but are useful for having adistinct null period in each cycle of the pulse generator encoder forsystem test purposes.

If the ls, 2s, 4s(A) and 4s(B) were to be produced separately and thencombined through an OR gate, the result would be a single train ofpulses equal to the sum of the separate trains of pulses, a total of 11pulses for each revolution of the pulse generator shaft encoder. Thechoice of having the II pulses in four separate trains'is forconvenience only in implementing the digitor, and none to the X motor.As the heading increases to 90, :t 5 37 30", progressively more pulsesare gated to the X motor and less to the Y motor. 'That' is showndiagrammatically in FIG. 3. During the second quadrant, the pulses gatedto the Y motor are increased. The entire pattern repeates itself for thethird and fourth quadrants. How many pulses are gated to the X motor andthe Y motor at any given time by combinlng various ones of the fourtrains of pulses is determined by the heading code.

It should be kept in mind that although the present invention is beingillustrated with a plotting device, the

' X and Y motors may be replaced by integrating pulse cle to correct theX and Y read-out automatically upon repositioning the cursors, placingthe stylus at the intersection of the cursors over a position visuallydetermined by landmarks to be correct.

From the diagram of FlG. 3 it may be seen that the number of pulsesgated during each cycle to the respec+ tive X and Y motors according tothe pattern indicated will yielda very close estimate of the true X andY components of any distance travelled as the four trains of pulses arebeing cyclically produced by the pulse generator 13. However, in itsbroadest aspects, the present invention is not limited ,to thisparticular scheme. Accordingly, this scheme, which will be more fullydescribed with reference to FIGS. 4 and 5, is by way of example, and notby way of limitation. Some alternative systems may yield more preciseconversion from polar to Cartesian coordinates. However, for landvehicles, such alternative systems cannot be justified because inpractice the vehicle will be so continually changing direction thatdistance error present in this technique will be averaged, and notaccumulated.

It should be recognized that unless the vehicle is proceeding along aheading corresponding to the center of the are represented by a codeword from the compass shaft encoder, i.e. along one of the directionsshown in the diagram of FIG. 3, the position plotted for the vehicle maybe in error by as much as 5 37' 30". This heading error is inherent inthis digital system because heading resolution has been purposelylimited (by the number of bits in the code word from the compass shaftencoder) in order to minimize the cost and complexity of the compassshaft encoder and the digital resolver. However, this heading error willbe averaged, as will the distance error, in converting thepolarcoordinates into the X and Y components of distance if the vehicle iscontinually changing heading. For example, on atypical mountain road,the heading is continually and randomly changing with the result thatthe track of the vehicle will be quite accurate.

in special cases, this heading error will not average to zero, such ason a long straight road, unless the driver purposely weaves back andforth, a practice which is neither safe nor practical. Accordingly, tocause the heading to vary so the error will average, even on a straightroad, the output from the compass shaft encoder may be effectively phasemodulated to simulate electronically the effect of the driver weavingback and forth across a straight path. That is preferably accomplishedwith a low frequency sinusoidal signal from an oscillator 30 (FIG. 1) tomodulate the sensor signal in the zero-crossover detector 23 so thatpart of the time the output pulse from the zero-crossover detector 23will fall within the are represented by the nearestadjacent sector fromthe compass shaft encoder.

1f the amplitude of this phase modulation is adjusted so that theoccurrence of the pulse from the zerocrossover detector is continuallyadvanced and retarded by 5 37' 30", The azimuth error should cancelexactly. For example, suppose the vehicle is drivenon a heading of 1.The pulse from the zero-crossover detector will occur repeatedly at sucha time as to cause the compass shaft encoder to be read out while it istransmitting the code 001001, which will cause thetrack of the vehicleto be plotted along a heading of However, when the output signal fromthe compass sensor is phase modulated by 37' 30" the pulse from thezero-crossover detector will occur alternately on the heading codes of 0and 11 15" so that the heading of the vehicle is seemingly changing backand forth across the true heading. If the phase modulation is fairlylinear in time, then the heading code for 0 will be in effect aboutpercent of the time and the code for 11 15'' will be in effect about 10percent of the time, resulting in an average track very close to l'. The

plotted path of the vehicle will thus appear as an essentially straightline along a heading of 1.

The frequency of the phase modulation should be slow enough to minimizeloss of motor drive pulses that may occur at the transition from onesector to the next but fast enough to render imperceptible the tackingaction in the track delineated by the plotting device 12. The phasemodulating signal from the oscillator 30 is preferably AC coupled tozero-crossover detector, as

shown, to avoid any DC offset error, and the zerocrossover detector ispreferably a high-gain differential amplifier which passes through zeroand quickly saturates as the input from the filter 22 crosses over zerofrom one polarity to the other.

It should be appreciated that the arrangement of the oscillator 30 andzero-crossover detector 23 is merely one example of how phase modulationcan be achieved to average azimuth error. Other techniques for achievingthe same result will occur to those skilled in the art. For example, theoscillator 30 could beused to drive a vibrator, solenoid, motor or otherelectromechanical actuator coupled to the housing of the shaft encoder25, so as to cause it to be continually rocked on its axis across an arcof 11 15. Still another possibility is to mount the entire compass on amechanical pivot and causing the compass to be swung back and forththrough a total are of 11 15' by .an electromechanical actuator. Yetanother possibility is a differential arrangement for the drive gear 26which permits the speed at which the shaft of the encoder is driven tobevaried, so that the phase relationship of the encoder shaft to theshaft of the sensor 20 may be continually advanced and retarded by 5 37'30". The same effect may be achieved electronically by applying theoutput of the oscillator to voltage variable elements in the filter 22which will cause a cyclic phase shift in the output signal from thesensor 20.'ln short, any scheme by which the phase relationship of thesensor shaft to the heading encoder shaft is made to oscillateperiodically will produce the desired averaging of the heading error.That may even take the form of some resilinent coupling in either thesensor shaft or the encoder shaft with a hard spot in each revolution ofthe shaft to cause mechanical oscillations in the shaft. This techniquemay also take the form of oscillations in the drive mechanism betweenthe shaft of the compass and the shaft of the encoder due to poormechanical design of the drive coupling.

A preferred embodiment of the digital resolver ll utilizing the codes ofTables I and II will now be described with reference to FIGS. 4 and 5.Referring first to FIG. 4, it may be seen that the two-phase synchronousinduction (reversible stepping) motors 27 and 28 of the plotting device12 (FIG. 1) are driven by pulses from the pulse generator using thefirst two columns of Table [I for the quadrature phase signals 4;, and11:, applied to field windings of each of the motors through amplifiers41 and 42. Each of the field windings are continuous windings connectedat the center to circuit ground and driven at opposite ends by theamplifiers 41 and 42, in a push-pull manner so that the polarity of thefieldsproduced. will alternate. The second winding of each m otor issimilarly driven in a push-pull" manner by AX or Al pulses. For example,AX pulses drive the second field winding of the motor 27 through twoamplifiers 43 and 44. Of these two, only the amplifier 44 is aninverting amplifier. For driving the X motor 27 in a positive direction,the phase of the AX pulses derived from shaft encoder pulses (AD) are ofa given phase. For driving the X motor inthe opposite (negative)direction, the phase of the AX pulse is changed to the opposite phase,ie is shifted 180. That is done by merely inverting each of the AXpulses in sine-cosine logic 46.

The AX and AY pulses are derived from the shaft encoder pulses by thedigital resolver l 1 through the sinecosine logic 46 in accordance withEquations (1) and (2) in the manner illustrated in the diagramof FIG. 3.To accomplish that, each time a pulse is transmitted by thezero-crossover detector 23 (FIG. 1), the 6-bit code from the compassshaft encoder 25 (FIG. 1) is gated into a bank of flip-flops 47, such asD-type flip-flops. The true and false output terminals of .eachflip-flop, such as the terminals A and A of the flip'flop storing thebinary digit of column A in Table l, are connected to the sine-cosinelogic in order that pulses at the respective ls, 2s, 4s(A) and 4s(B) maybe combined at the respective AX and AY output terminals according tothe scheme diagrammatically illustrated in FIG. 3. For example, assuminga heading of 33, six input pulses to the sine-cosine logic are gated tothe X motor. while 9 pulses are gated to the Y motor during revolu-.

tion of the pulse-generator shaft encoder. This is implemented by simplyemploying the heading code follower (logic 1 being a negative voltageand logic qt being zero volts). It should be noted that the pulsepolarities shown in FIG. 4 are opposite the usual conven- (OOOOIO)stored in the bank of flip-flops 47 to enable,

or inhibit, selected gates to route pulses from selected terminals ofthe pulse-generator shaft encoder to respective ones of the AX and AYoutput terminals. For example, to transmit six AX pulses, a gatecouplingthe shaft encoder terminals for the 2.s and 4's(A) pulses to theamplifiers 43 and 44 are enabled while all other gates coupling the twoother shaft encoder terminals to those amplifiers are inhibited;Simultaneously gates coupling the shaft encoder terminalsfor the ls,4s(A) and 4's(B) pulses to amplifiers 48 and 49 are enabled while a gatecoupling the shaft encoder terminal for the 2's pulses to thoseamplifiers is inhibited.

FIG. 5 illustrates in a logic diagram an exemplary arrangement for thesine-cosine logic 46. Four inhibit gates 51 through 54 couple the ls,2s, 4s(A) and 4s(B) pulses to the X motor through an OR gate 55 and aPNP transistor Q,. That transistor has a load resistor 56 in what isshown to be the emitter circuit to transmit uninverted X pulses combinedby the OR gate 55 from the inhibit gates 51 through 54 according to theheading code. Inhibit gates 61 through 64 similarly couple the sameinput terminals of the sine-cosine logic to the Al motor through an ORgate 65 and a PNP the transistor Q, will receive a bit-l (-V) signal atthe B terminal and a bit-U (Zero V) signal at the B terminal circuit totransmit uninthus causing the transistor Q, to operate as an emittertion, up being minus and down being zero.

When the digit from the column B of Table l is a binary l, thepolarities of the B and B terminals are reversed. The emitter of Q, nowacts as a collector and the collector as an emitter, causing Q, tooperate as an inverting amplifier. The transistor Q, is similarly causedto operate as an emitter follower when the binary digit from the columnA of Table l is a binary 0, and as an inverting amplifier when thebinary digit from column A- is a binary 1. In that manner the first twocolumns of 1 the compass shaft encoder output will control the directionof the X and Y motors according to the sign of the AX and AI componentsas resolved by the sinecosine logic 46. In other words, the transmittedAX pulses are negative going for westerly headings and positive goingfor easterly headings while the AI pulses are negative going fornortherly headings and positive going for southerly headings, all underthe simple control of the first two digits of the heading code throughthe direct control of the transistors Q, and 0,. Other motor reversingcircuit arrangements could, however, be employed for each of the X and Ymotors. Also, in the arrangement shown, the transistors Q, and Q, may beselected from either available PNP types or available NPN types,provided the reversal of operating logic levels is taken intoconsideration.

The remaining binary digits shown in Columns C, D, E and F of Tablel aredecoded by nine AND gates 71 through 79 to obtain control signals forselectively in hibiting the gates 51 to 54 and 61 to 64 through twobanks of OR gates 81 and 82. For example, for the heading of 33previously assumed, the AND- gate 74 transmits a signal to inhibit thegates 51 and 53 for the AX pulses, and the gate 62 for the Al pulses.The result is six pulses transmitted by the transistor Q, and ninepulses transmitted by the transistor Q, for each cycle of thpulse-generator shaft encoder 13. In that manner, for each sector of aquadrant, one of the AND gates 71 through 79 will transmit a signal toso inhibit transmission of shaft encoder pulses as to produce thedesired AX and AY pulses for that sector, as shown schematically by thediagram of FIG. 3.

To facilitate understanding and reading this logic diagram, considerthat the gates 71 through 77 determine the conditions of the X equals 0,2, 4, 6, 8, 9, and 10 situations, respectively, thus defining theconditions Y equals 1 1, ll, 10, 9, 8, 6, and 4, respectively. The lasttwo gates 78 and 79 detect the Y 2 and Y 0 conditions thus defining theX 11 condition for the last two headings in sequence from north to eastin the diagram of FIG. 3. The same logic is then valid for all otherquadrants. For the second quadrant the same but reverse sequenceobtains, and for the third and fourth quadrants, the entire sequence ofthe first two quadrants: if repeated. The difference from quadrant toquadrant isonly in the signs of the X and Y components as determined bythe first two columns A and B of the compass shaft encoder output shownin Table I.

Referring now to FIG. 6, an alternative arrangement for obtaining aheading code without the use of a shaft encoder employs a parallelbinary counter driven by a sine-wave oscillator 86 that also drives asynchronous motor 87 through a power amplifier 88. The motor drives apulse generator 89, such as a cam operated switch, and the magneticsensor (loop) 20. The pulse from the generator 89 resets the counter 85once per revolution of the sensor. The heading code thus produced by thecounter is effectively read into the buffer flip-flops 47 by a pulsefrom the zero-crossover detector 23 as described with reference to FIG.4.

The pulse generator 89 is set to produce a pulse at a predeterminedreference point relative to the vehicle, and the counter is arranged tocount up from zero to, for example, 360 (assuming the sensor is rotatedcounter clockwise) so that the heading code read out at any given timewill correspond directly to the heading of the vehicle. For example, ifthe vehicle is on a magnetic heading of 30, as the sensor is rotatedcounter clockwise from the position at which the counter is reset tozero, the counter will count 30 pulses before the sensor passes throughmagnetic north. A pulse from the zero-crossover detector then reads outthe binary code for the magnetic heading of 30. This assumes that themotor 87 is adapted to cause the sensor to complete one revolution in360 cycles of the oscillator 86. That can be assured by the proper useof gears (not shown) between the motor 87 and the sensor.

An advantage of this arrangement is that, when parallel logic isemployed to implement the counter, all stages of the flip-flop willchange state at the same time so that no ambiguity can occur if theheading is read out as the sensor crosses from one sector into another.The heading read out will be one or the other. To avoid the possibilityof trying to read out the heading at the exact moment flip-flops in thecounter are changing state, a pulse shaper (saturating amplifier) 90 maybe employed to i provide a square wave to operate the counter. A pulseshaper 91 may then provide a square pulse from the zero crossoverdetector having a width just greater than one pulse from the pulseshaper 90. By using the pulse fromtheshaper 91 to enable an AND gate 92,and adapting the counter to operate off the leading edge of pulses fromthe pulse shaper 90, while the buffer flip-flops 47 (FIG. 4) operate thetrailing edge, it can be assured that the states of the flip-flops inthe counter 85 are stable when the heading is read out. In that mannerthe counter is always read out just before, or just after, it changesstate, and never while changing state. r i

The count of 360 pulses per revolution of the sensor is, of course,arbitrary. For greater heading resolution, twice that many, or ten timesthat many pulses per revolution can be used. For less resolution, asmaller number of pulses would be used, such as 32 for a resolutionequal to that of the first embodiment described. The smaller numberwould be preferred for most applications because of the smaller numberof components necessary to implement the counter and the digitalresolver. The counter may even be an up-down counterwhich counts fromzero to eight and back to zero during each half revolution of the sensor20, and by the use of suitable logic networks, the code of Table] may beprovided as the output of such an up-down counter in order to use thesine-cosine logic of FIG. 5.

If the code ofTable I is not used in this modification, there will beincreased complexity in the digital resolver required to decode theheading code and produce sine and cosine codes, and separate signsignals. However, once these sine and cosine codes are obtained, theycan be employed to gate the proper numher of pulses to the'transistor Q,and Q (FIG. 5). The sine signals would replace the B and A signals whichcontrol the inverting and noninverting functions of the transistors.

For most efficient implementation, the heading decoder may consist oftwo diode matrices, each producing a sine or cosine code and signsignal, and the train of pulses may be a single continuous train at arepetition rate proportional to vehicle speed. The sine and cosine codescould then be used directly in pulse rate multipliers to implementequations (1) and (2).

To generate a continuous train of pulses for use in this modification,the pulse generator 13 may be implemented with only the first twocolumns of Table II, i.e. with a shaft encoder for just the signals (1:,and (b applied to the motors 27 and 28 as shown in FIG. 4. The signal(1:, could then be used as the pulse train input to the sine and cosinepulse rate multipliers.

FIG. 7 illustrates schematically an arrangement for implementing theplotting device 12 (FIG. 1) using two cursors (rods) 101 and 102 toposition a stylus carriage 103 over a plotting board 104. The carriagemay be, for example, two sleeves, one over each of the rods 101 and 102,but connected together by a pin such that they always intersect, but arefree to rotate relative to each other. A supporting base and frame (notshown) support the board 104 in a stationary position with respect topulleys for X and Y drive chains l05 through 108. The motors 27 and 28are connected through suitable gear trains (not shown) to one pulley foreach chain as indicated by dotted lines representing mechanicallinkages. 1

If the cursors are so attached to the chains that they areperpendicular, horizontal and vertical lines will be traced by thestylus carriage 103 along X and Y plotting axes as the vehicle travelson east or west, and north or south headings, but only if a gyro compassis used or a magnetic compass is properly compensated for distortion ofthe earth's magnetic field due to the ferromagnetic mass of the vehicle.

Proper compensation of a magnetic compass can be achieved by adjustingthe positions of a number of permanent magnets as the vehicle is parkedat various headings from 0 to 360 in a manner that is standard forcompensating a magnetic compass on a ship. However, the procedure takesa considerable time, and 7 must be repeated .from time to time as thepermanent magnetization of the vehicles ferromagnetic mass is alteredunder the influence of the earth 's magnetic field.

It has been discovered that a single magnet can be adjusted more easilyto cause the plotting of parallel lines for easterly and westerlyheadings, and parallel lines for northerly and southerly headings. Theresult will usually be a rhomboid if the vehicle travels in a rectangleon cardinal point headings. That, of course, is not acceptable forplotting a map or tracking the vehicles position on a map. However, theplotting device can be adjusted to produce a rectangular plot byoffsetting the cursors by angles equal and opposite to angles by, whichthe sides of the rhomboid depart from a rectangle, as illustrated inFIG. 9 for the rhomboid of FIG. 8. That can be done by moving the endsof the cursors on the drive chains, or slipping the chains ontheipulleys, until the cursors are at the proper angle with respecttothe X and Y axes. For the exemplary rhomboid shown in FIG. 8, the newpositions of the cursors are indicated by dotted lines. FlG. 9 shows thecursors 101 and 102 at these new positions. When'the vehicle thentravels on a cardinal-point heading, the line plotted will be parallelto one of the axes.

The magnetic compass is preferably mounted on gimbals, or at leastpivoted about a pitch axis so that steep grades will not introduce acompass error by causing the axis of rotation for the compass to departfrom a substantially vertical position. The roll angle of a vehicle doesnot normally vary as much as the pitchangle,

but for greater accuracy the magnetic compass should be pivoted aboutthe roll axis also. Damping should also be provided in theusualmanneremployed for damping is made proportional to the pitch angle, and maytherefore be used to further multiply the X and Y train of pulses by thecosine of the pitch angle.

To further improve performance of the system, the

magnetic sensor 20-may be mounted at the end of flexible pole made ofstainless steel, fiberglass, or the like, thus locating the sensor asfar as possible from the magnetic influence of the vehicle. Otherimprovements,

modifications and variations may readily occur to those skilled in theart. Consequently, although particular embodiments of invention-havebeen described and illustrated herein, it is intended that the claims beinterpreted to cover such improvements, modifications and variations.

What is claimed is:

1. ln a system for tracking a land vehicle on a display system usingCartesian coordinates, the combination of a compass and means responsiveto said compass for providing heading data directly in digital form ofsaid vehicle,

a pulse generator coupled directly to the drive system of said vehicleto continually produce a group of pulses representing a unit distancetraveled,

digital computing means for resolving said group of pulses into X and Ytrains of pulses by continually multiplying said group of pulses fromsaid pulse generator by a function of said compass heading data, therebyproducing said X and Y trains of pulses proportional to the vectorcomponents of the distance traveled by said vehicle for plotting in aCartesian coordinate system, and

means for seperately integrating said X and Y trains of pulses, therebycontinually updating Cartesian digital form corresponding to the headingof said,

' vehicle, said code having two sign bits A and B, where said bit A is apositive sign for any northerly heading from 270 to 90, and a negativesign for any southerly heading from 90 to'270, and said bit B is apositive sign for any easterly heading from 0 to l, and a negative signfor any westerly heading from 180 to 0, and where said code includes aplurality of additional bits, C, D for designating: a number ofsuccessive equally spaced headings from 0 to with successivelyincreasing code numbers, an equal number of equally spaced headings from90 to with successively decreasing code numbers, and a duplication ofsuccessively increasing and then decreasing code numbers from 180through 270 to 0,

means for continually generating pulses representing distancetraveled'by-said vehicle, i

digital means responsive to said heading code and to said pulses forproducing two pulse trains of pulses approximately according to theequations |AX1= AD lsin 0| |AY| AD Icos Ol where 0 is the heading anglerepresented by said code bits C, D AD is the number of pulses producedby said pulse generating means in an increment of time, and AX and A)are the number of pulses resolved into said two trains during saidincrement of time, means responsive to said heading code bit B forintegrating said AX pulses to provide a number of integrated AX pulsesequal to the product AD sin 0 by effectively adding AX pulses when saidcode bit B is positive, and subtracting AX pulses when said code bit Bis negative, and means responsive to saidheading code bit A forintegrating said AY-pulses to provide a number of inte grated AY pulsesequal to the product AD cos 0 by effectively adding AY pulses when saidcode bit A is positive, and subtracting AY pulses when said code bit Ais negative. g

3. A system as defined in claim 2 wherein said last two named means eachincludes a bidirectional integrating device for adding pulses of onepolarity and subtracting pulses of opposite polarity, and a junctiontransistor having its base connected to receive pulses to be integratedof a given polarity, its collector connected to receive one of said signbits A and B directly, and its emitter connected to receive thecomplement of one of said bits A and B through a resistor, and means forcoupling said bidirectional integrating device to said emitter, wherebysaid transistor functions as a noninverting coupler for pulses to beintegrated when said one of said sign bits is of a given polarity and aninverting coupler for pulses to'be integrated when said one of said signbits is of a polarity opposite said given polarity.

4. Apparatus as defined in claim 3 wherein said digital means forproducing said trains of pulses AX and AY. includesdecoding meansresponsive to said code bits C, D representing the heading angle 0 forproducing codes representing the values of |sin BI and lcos 0t and pulserate multiplying means for producing from said pulses AD said trainofpulses AX and A) as products of said pulses AD and said codesrepresenting values of [sin GI and IcosOl.

5. [ha system for tracking a vehicle using linear coordinates, thecombination of a compass and means for providing heading data of saidvehicle directly in digital form from said compass,

a pulse generator coupled to a drive train of said vehicle to directlyproduce a train of pulses representing distance traveled,

digital computing means for resolving said train of pulses into twotrains of pulses by multiplying said train of pulses from the pulsegenerating means by a function of said compass heading data, therebyproducing said two trains of pulses representing vector components ofthe distance traveled in a linear coordinate system, and

means for separately counting or integrating said two trains of pulses,thereby producing said linear coordinates. v a r 6. Apparatus, forcontinually updating Cartesian coordinates of a land vehicle from astarting point in a given geographic area as said vehicle changes itsposition in said area, comprised of a rotating magnetic-compass meansfor producinga sinusoidal signal which crosses zero, from a voltage of agiven polarity with respect to a reference, once per revolution at apredetermined point in the revolution in relation to magnetic north,

code means operated in synchronism with said magnetic-compass means forproducing a cyclic heading code having one code cycle per revolution ofsaid compass means, the output of said cyclic code means always beingzero when saidrotating compass means is at a predetermined point in thedirection of travel of said vehicle, whereby said heading code alwayscorresponds to the heading of said vehicle relative to said magneticnorth direction when said sinusoidal signal crosses zero from a voltageof said given polarity,

- means for detecting when said sinusoidal signal crosses zero from avoltage of said given polarity,

buffer storage means for receiving and storing a heading code from saidcode means under control of said detecting means when said sinusoidalsignal crosses zero from a voltage of said given polarity, means forcontinually producing pulses of a number proportional to distancetraveled by said vehicle, means for resolving said pulses into twotrains of pulses approximately according to the equations AX AD sin 0 AYAD cos 0 where 0 is the heading angle represented by said code, AD isthe number of pulses produced by said pulse generating means in anincrement of time, and AX and AY are the numbers of pulses resolved intosaid two trains during said increment of time, and I means forintegrating separate said two trains of pulses AX and AY therebycontinually updating said Cartesian coordinates.

7. Apparatus as defined in claim 6 wherein said code means comprises ashaft encoder driven in synchronism with said compass means forproducing a heading code in digital form corresponding to the heading ofsaid vehicle, said code having two sign bits A and B, where said bit Ais a positive sign for any northerly heading from 270 to 90, and anegative sign for any southerly heading from 90 to 270, and said bit Bis a positive sign for any easterly heading from 0 to 180, and anegative sign for any westerly heading from 180 to 0, and where saidcode includes a plurality of additional bits C, D, for designating: anumber of successive equally spaced headings from 0 to 90 withsuccessively decreasing code numbers, and a duplication of successivelyincreasing and then decreasing code numbers from through 270 to 0,

and wherein said resolving means is comprised of digital meansresponsive to said heading code and to said pulses for producing twopulse trains of pulses approximately according to the equations IAXI =AD[sin a] |AY| =AD lcos 0i where 0 is the heading angle represented bysaid code bits C, D AD the number of pulses produced by said pulsegenerating means in an increment of time, and AX and AY are the numberof pulses resolved into said two trains during said increment of time,

and means responsive to said heading code bits A and B for integratingsaid Y and X pulses in positive and negative directions according to thesigns represented by said code bits A and B.

8. Apparatus as defined in-claim 7 wherein said last named meansincludes for each of said trains of AX and AY pulses a bidirectionalintegrating device for adding pulses of one polarity and subtractingpulses of opposite polarity, and a junction transistor having its baseconnected to receive pulses to be integrated of a given polarity, itscollector connected to receive one of said sign bits A and B directly,and its emitter connected to receive the complement of one of said bitsA and B through a resistor, and means for coupling said bidirectionalintegrating device to said emitter, whereby said transistor junctions asa noninverting coupler for pulses to be integrated when said oneof saidsign bits is of a given polarity opposite said given polarity.

9. Apparatus as defined in claim 8 wherein said digital means forproducing said trains of pulses AX and AY includes decoding meansresponsive tosaid code bits C, D representing the heading angle 0 forproducing codes representing the values of i sin 0| and 1 cos 0 andpulse rate multiplying means for producing from said pulses AD saidtrain of pulses AX and AY as products of said pulses D and said codesrepresenting values of |sin0|andlcos0|.

10. Apparatus as defined in claim 6 where said means for integratingsaid trains of pulses AX and AY is comprised of a plotting device havingfirst andsecond cursors driven in respective X and Y directions withmeans for plotting carried at the intersection of said cursors, each ofsaid cursors being driven by two drive chains, one at each end, eachdrive chain going around two pulley at least one of which is driven,said cursors being adjustable in angle relative to X'and Y axis of saidplotting device through said drive chains to compensate for anydeviations of east-west and north-south plots from positions parallel tosaid X and Y axes, respectively,'by offsetting said cursors inrespective directions opposite any deviations from positions paralleltosaid X and Y axes after a single magnet has been adjusted in saidmagnetic compass means to compensate for magnetic compass error due toferromagnetic mass of said vehicle by so positioning said magnet in saidmagnetic compass means as to cause parallel lines to be plotted on eastand west and parallel lines to be plotted on north and south headings.

11. In a system for continually plotting Cartesian co- "ordinates of amoving vehicle using: an XY plotting device having two crossed cursorswhich carry a stylus I device, a method for compensating compass errordue to the ferromagnetic mass of said vehicle by adjusting the positionof compensating magnetic means near said magnetic compass such that,when said vehicle travels in a rectangle on cardinal magnetic headings,a rhomboid is plotted, and adjusting said cursors in said plottingdevice at angles with respect to X and Y axes thereof equal but oppositein direction to angles by which corresponding sides of said rhomboiddepart from lines parallel to said X and Y axes.

1. In a system for tracking a land vehicle on a display system usingCartesian coordinates, the combination of a compass and means responsiveto said compass for providing heading data directly in digital form ofsaid vehicle, a pulse generator coupled directly to the drive system ofsaid vehicle to continually produce a group of pulses representing aunit distance traveled, digital computing means for resolving said groupof pulses into X and Y trains of pulses by continually multiplying saidgroup of pulses from said pulse generator by a function of said compassheading data, thereby producing said X and Y trains of pulsesproportional to the vector components of the distance traveled by saidvehicle for plotting in a Cartesian coordinate system, and means forseperateLy integrating said X and Y trains of pulses, therebycontinually updating Cartesian coordinate data.
 2. A system forcontinually updating the Cartesian coordinates of a land vehicle from astarting point in a given geographic area as said vehicle travelsthrough said area, comprised of means for continually producing aheading code in digital form corresponding to the heading of saidvehicle, said code having two sign bits A and B, where said bit A is apositive sign for any northerly heading from 270* to 90*, and a negativesign for any southerly heading from 90* to 270*, and said bit B is apositive sign for any easterly heading from 0* to 180*, and a negativesign for any westerly heading from 180* to 0*, and where said codeincludes a plurality of additional bits, C, D . . . for designating: anumber of successive equally spaced headings from 0* to 90* withsuccessively increasing code numbers, an equal number of equally spacedheadings from 90* to 180* with successively decreasing code numbers, anda duplication of successively increasing and then decreasing codenumbers from 180* through 270* to 0*, means for continually generatingpulses representing distance traveled by said vehicle, digital meansresponsive to said heading code and to said pulses for producing twopulse trains of pulses approximately according to the equations Delta XDelta D sin theta Delta Y Delta D cos theta where theta is the headingangle represented by said code bits C, D . . . , Delta D is the numberof pulses produced by said pulse generating means in an increment oftime, and Delta X and Delta Y are the number of pulses resolved intosaid two trains during said increment of time, means responsive to saidheading code bit B for integrating said Delta X pulses to provide anumber of integrated Delta X pulses equal to the product Delta D sintheta by effectively adding Delta X pulses when said code bit B ispositive, and subtracting Delta X pulses when said code bit B isnegative, and means responsive to said heading code bit A forintegrating said Delta Y pulses to provide a number of integrated DeltaY pulses equal to the product Delta D cos theta by effectively addingDelta Y pulses when said code bit A is positive, and subtracting Delta Ypulses when said code bit A is negative.
 3. A system as defined in claim2 wherein said last two named means each includes a bidirectionalintegrating device for adding pulses of one polarity and subtractingpulses of opposite polarity, and a junction transistor having its baseconnected to receive pulses to be integrated of a given polarity, itscollector connected to receive one of said sign bits A and B directly,and its emitter connected to receive the complement of one of said bitsA and B through a resistor, and means for coupling said bidirectionalintegrating device to said emitter, whereby said transistor functions asa noninverting coupler for pulses to be integrated when said one of saidsign bits is of a given polarity and an inverting coupler for pulses tobe integrated when said one of said sign bits is of a polarity oppositesaid given polarity.
 4. Apparatus as defined in claim 3 wherein saiddigital means for producing said trains of pulses Delta X and Delta Yincludes decoding means responsive to said code bits C, D . . .representing the heading angle theta for producing codes representingthe values of sin theta and cos theta , and pulse rate multiplying meansfor producing from said pulses Delta D said train of pulses Delta X andDelta Y as products of said pulses Delta D and said codes representingvalues of sIn theta and cos theta .
 5. In a system for tracking avehicle using linear coordinates, the combination of a compass and meansfor providing heading data of said vehicle directly in digital form fromsaid compass, a pulse generator coupled to a drive train of said vehicleto directly produce a train of pulses representing distance traveled,digital computing means for resolving said train of pulses into twotrains of pulses by multiplying said train of pulses from the pulsegenerating means by a function of said compass heading data, therebyproducing said two trains of pulses representing vector components ofthe distance traveled in a linear coordinate system, and means forseparately counting or integrating said two trains of pulses, therebyproducing said linear coordinates.
 6. Apparatus, for continuallyupdating Cartesian coordinates of a land vehicle from a starting pointin a given geographic area as said vehicle changes its position in saidarea, comprised of a rotating magnetic-compass means for producing asinusoidal signal which crosses zero, from a voltage of a given polaritywith respect to a reference, once per revolution at a predeterminedpoint in the revolution in relation to magnetic north, code meansoperated in synchronism with said magnetic-compass means for producing acyclic heading code having one code cycle per revolution of said compassmeans, the output of said cyclic code means always being zero when saidrotating compass means is at a predetermined point in the direction oftravel of said vehicle, whereby said heading code always corresponds tothe heading of said vehicle relative to said magnetic north directionwhen said sinusoidal signal crosses zero from a voltage of said givenpolarity, means for detecting when said sinusoidal signal crosses zerofrom a voltage of said given polarity, buffer storage means forreceiving and storing a heading code from said code means under controlof said detecting means when said sinusoidal signal crosses zero from avoltage of said given polarity, means for continually producing pulsesof a number proportional to distance traveled by said vehicle, means forresolving said pulses into two trains of pulses approximately accordingto the equations Delta X Delta D sin theta Delta Y Delta D cos thetawhere theta is the heading angle represented by said code, Delta D isthe number of pulses produced by said pulse generating means in anincrement of time, and Delta X and Delta Y are the numbers of pulsesresolved into said two trains during said increment of time, and meansfor integrating separate said two trains of pulses Delta X and Delta Ythereby continually updating said Cartesian coordinates.
 7. Apparatus asdefined in claim 6 wherein said code means comprises a shaft encoderdriven in synchronism with said compass means for producing a headingcode in digital form corresponding to the heading of said vehicle, saidcode having two sign bits A and B, where said bit A is a positive signfor any northerly heading from 270* to 90*, and a negative sign for anysoutherly heading from 90* to 270*, and said bit B is a positive signfor any easterly heading from 0* to 180*, and a negative sign for anywesterly heading from 180* to 0*, and where said code includes aplurality of additional bits C, D, . . . for designating: a number ofsuccessive equally spaced headings from 0* to 90* with successivelyincreasing code numbers, an equal number of equally spaced headings from90* to 180* with successively decreasing code numbers, and a duplicationof successively increasing and then decreasing code numbers from 180*through 270* to 0*, and wherein said resolving means is comprised ofdigital means responsive to said heading code and to said pulses forproducing two pulse trains of pulses approximately according to theequations Delta X Delta D sin theta Delta Y Delta D cos theta wheretheta is the heading angle represented by said code bits C, D . . . ,Delta D the number of pulses produced by said pulse generating means inan increment of time, and Delta X and Delta Y are the number of pulsesresolved into said two trains during said increment of time, and meansresponsive to said heading code bits A and B for integrating said Y andX pulses in positive and negative directions according to the signsrepresented by said code bits A and B.
 8. Apparatus as defined in claim7 wherein said last named means includes for each of said trains ofDelta X and Delta Y pulses a bidirectional integrating device for addingpulses of one polarity and subtracting pulses of opposite polarity, anda junction transistor having its base connected to receive pulses to beintegrated of a given polarity, its collector connected to receive oneof said sign bits A and B directly, and its emitter connected to receivethe complement of one of said bits A and B through a resistor, and meansfor coupling said bidirectional integrating device to said emitter,whereby said transistor junctions as a noninverting coupler for pulsesto be integrated when said one of said sign bits is of a given polarityopposite said given polarity.
 9. Apparatus as defined in claim 8 whereinsaid digital means for producing said trains of pulses Delta X and DeltaY includes decoding means responsive to said code bits C, D . . .representing the heading angle theta for producing codes representingthe values of sin theta and cos theta , and pulse rate multiplying meansfor producing from said pulses Delta D said train of pulses Delta X andDelta Y as products of said pulses D and said codes representing valuesof sin theta and cos theta .
 10. Apparatus as defined in claim 6 wheresaid means for integrating said trains of pulses Delta X and Delta Y iscomprised of a plotting device having first and second cursors driven inrespective X and Y directions with means for plotting carried at theintersection of said cursors, each of said cursors being driven by twodrive chains, one at each end, each drive chain going around two pulleyat least one of which is driven, said cursors being adjustable in anglerelative to X and Y axis of said plotting device through said drivechains to compensate for any deviations of east-west and north-southplots from positions parallel to said X and Y axes, respectively, byoffsetting said cursors in respective directions opposite any deviationsfrom positions parallel to said X and Y axes after a single magnet hasbeen adjusted in said magnetic compass means to compensate for magneticcompass error due to ferromagnetic mass of said vehicle by sopositioning said magnet in said magnetic compass means as to causeparallel lines to be plotted on east and west and parallel lines to beplotted on north and south headings.
 11. In a system for continuallyplotting Cartesian coordinates of a moving vehicle using: an X-Yplotting device having two crossed cursors which carry a stylus at theintersection thereof, a magnetic compass for producing a heading signal,means for obtaining a signal representing distance traveled by saidvehicle, and a resolver for obtaining from said heading and distancesignals two signals according to the equations Delta X Delta D sin thetaDelta Y Delta D cos theta where Delta D is an increment of distancetraveled, theta is the angle represented by said heading signal, andDelta X and Delta Y are said two signals employed separately to drivesaid two cursors in X and Y directions of said plotting device, a methodfor compensating compass error due to the ferromagnetic mass of saidvehicle by adjusting the position of compensating magnetic means nearsaid magnetic compass such that, when said vehicle travels in arectangle on cardinal magnetic headings, a rhomboid is plotted, andadjusting said cursors in said plotting device at angles with respect toX and Y axes thereof equal but opposite in direction to angles by whichcorresponding sides of said rhomboid depart from lines parallel to saidX and Y axes.